local lyrics = { "[00:02.34]It's raining tacos", "[00:05.11]From out of the sky", "[00:06.97]Tacos", "[00:08.65]No need to ask why", "[00:10.22]Just open your mouth and close your eyes", "[00:14.43]It's raining tacos", "[00:16.11]It's raining tacos", "[00:19.33]Out in the street", "[00:20.93]Tacos", "[00:22.72]All you can eat", "[00:24.40]Lettuce and shells", "[00:26.21]Cheese and meat", "[00:28.36]It's raining tacos", "[00:30.49]Yum yum yum yum yumity yum", "[00:33.52]It's like a dream!", "[00:37.47]Yum yum yum yum yumity yum", "[00:40.57]Bring your sour cream", "[00:45.35]...", "[00:48.79]Shell", "[00:49.74]Meat", "[00:50.62]Lettuce", "[00:51.45]Cheese", "[00:52.32]Shell", "[00:53.25]Meat", "[00:54.10]Lettuce", "[00:54.94]Cheese", "[00:55.76]Shell", "[00:56.66]Meat", "[00:57.52]Cheese cheese cheese cheese cheese", "[00:59.63]It's raining tacos, ooh", "[01:03.57]Raining tacos, ooh", "[01:07.03]Raining tacos, ooh", "[01:11.86]It's raining tacos", "[01:13.59]It's raining tacos, ooh", "[01:17.52]Raining tacos ooh", "[01:21.03]Raining tacos", "[01:22.36]...", "[01:25.74]It's raining tacos" } local MusicPart = Instance.new("Part") MusicPart.Parent = game.Workspace MusicPart.Position = Vector3.new(0,0.5,-15) MusicPart.Name = "MusicPart" MusicPart.Anchored = true local clickdetector = Instance.new("ClickDetector",MusicPart) clickdetector.Parent = MusicPart local sound = Instance.new("Sound",MusicPart) sound.SoundId = "rbxassetid://142376088" sound.EmitterSize = 5 sound.Looped = false sound.Parent = MusicPart local billboard = Instance.new("BillboardGui",MusicPart) billboard.Size = UDim2.new(0,200,0,50) billboard.Adornee = MusicPart billboard.AlwaysOnTop = true billboard.StudsOffsetWorldSpace = Vector3.new(0,6,0) billboard.MaxDistance = 50 local textlabel = Instance.new("TextLabel",billboard) textlabel.BackgroundTransparency = 1 textlabel.TextColor3 = Color3.fromRGB(200, 200, 200) textlabel.TextStrokeTransparency = 0.8 textlabel.TextSize = 20 textlabel.Size = UDim2.new(1,0,1,0) textlabel.Text = "..." local lyricsTable = {} for i, line in ipairs(lyrics) do local timestamp, lyric = line:match("^%[(%d%d:%d%d%.%d%d)%](.+)$") if timestamp and lyric then table.insert(lyricsTable, {timestamp = timestamp, lyrics = lyric}) end end local function displayLyrics() print("Music Started") local startTime = tick() local currentIndex = 1 while currentIndex <= #lyricsTable do local timestamp = lyricsTable[currentIndex].timestamp local currentlyrics = lyricsTable[currentIndex].lyrics local timestampSeconds = (tonumber(timestamp:sub(1,2)) * 60) + tonumber(timestamp:sub(4)) local elapsedSeconds = tick() - startTime if elapsedSeconds >= timestampSeconds then --print(currentlyrics) textlabel.Text = currentlyrics currentIndex = currentIndex + 1 else wait(0.1) end if sound.IsPlaying == false then print("Music Stopped") textlabel.Text = "Music Stopped" break end end print("Music Stopped") textlabel.Text = "Music Stopped" sound:Stop() end clickdetector.MouseClick:Connect(function() if not sound.IsPlaying then MusicPart.BrickColor = BrickColor.new("Bright green") sound:Play() displayLyrics() else MusicPart.BrickColor = BrickColor.new("Bright red") sound:Stop() wait(2) textlabel.Text = "..." end end)